Almost all communications systems utilize some form of queuing in the transmission and reception of information over the channel. In fact, many communications systems use multiple queues having different Quality of Service (QoS) parameters. In some of these prior art systems, a separate dedicated buffer is maintained for each queue. Buffers of fixed size are allocated and assigned to each queue. This, however, results in inefficient utilization of memory since the empty buffer space in underutilized queues cannot be used for queues that have high utilization and may be nearly full.
In other prior art systems, a dedicated file system management entity is realized for creating and managing the queues. Such a management entity is typically constructed in software thus requiring both hardware and software resources. This complicates the process of creating and managing multiple queues.
Therefore, there is a need for a queuing system that provides multiple independent queues each having individual QoS characteristics that does not suffer from the problems of wasted memory space and complex software execution as in the prior art queuing schemes described above.